<!DOCTYPE html><html><head><title>Ext.form.action.DirectSubmit | Ext JS 4.0 Documentation</title><script type="text/javascript" src="../ext-all.js"></script><link rel="stylesheet" href="../reset.css" type="text/css"><link rel="stylesheet" href="../scrollbars.css" type="text/css"><link rel="stylesheet" href="../docs.css" type="text/css"><link id="styleCss" rel="stylesheet" href="../style.css" type="text/css"><script type="text/javascript" src="../prettify.js"></script><link rel="stylesheet" href="../prettify.css" type="text/css"><!-- link(rel: 'stylesheet', href: req.baseURL + '/css/ext4.css', type: 'text/css')--><link rel="shortcut icon" type="image/ico" href="../favicon.ico"><!--[if IE]>
<style type="text/css">.head-band { display: none; }
.header { border: 0; top: 0; left: 0px; background: url(../header.gif) repeat-x; }
.doc-tab .members .member a.more { background-color: #efefef; }
</style><link rel="stylesheet" href="/new/css/ie.css" type="text/css"><![endif]-->
</head><body id="ext-body" class="iScroll"><div id="notice" class="notice">For up to date documentation and features, visit 
<a href="http://docs.sencha.com/ext-js/4-0">http://docs.sencha.com/ext-js/4-0</a></div><div class="wrapper"><div class="head-band"></div><div class="header"><h2><a href="../index.html">Sencha Documentation</a></h2></div><div id="search"><form><input type="text" placeholder="Search" id="search-field" autocomplete="off" name="q"></form><div id="search-box"></div></div><div id="treePanel"></div><div id="container"><script type="text/javascript">

    req = {
        liveURL: '.',
        standAloneMode: true,
        origDocClass: 'Ext.form.action.DirectSubmit',
        docClass: 'Ext.form.action.DirectSubmit',
        docReq: 'Ext.form.action.DirectSubmit',
        version: '4.0',
        baseURL: '.',
        baseDocURL: '.',
        baseProdURL: '.'
    };

    clsInfo = {};



</script>

<script type="text/javascript" src="../search.js"></script>
<!--script type="text/javascript" src="/new/javascripts/app/examples.js"></script-->
<script type="text/javascript" src="../class_tree.js"></script>
<script type="text/javascript" src="../class_doc.js"></script>
<script type="text/javascript">
    req.source = 'DirectSubmit.html#Ext-form.action.DirectSubmit';
    clsInfo = {"methods":["DirectSubmit","callOverridden","getName"],"cfgs":["clientValidation","failure","form","headers","method","params","reset","scope","submitEmptyText","success","timeout","url","waitMsg","waitTitle"],"properties":["CLIENT_INVALID","CONNECT_FAILURE","LOAD_FAILURE","SERVER_INVALID","addStatics","borrow","create","createAlias","failureType","implement","override","response","result","run","type"],"events":[],"subclasses":[]};
    Ext.onReady(function() {
        Ext.create('Docs.classPanel');
    });
</script><div id="top-block" class="top-block"><h1 id="clsTitle" class="cls"><a href="../source/DirectSubmit.html#Ext-form.action.DirectSubmit" target="_blank">Ext.form.action.DirectSubmit</a></h1></div><div id="docContent"><div id="doc-overview-content"><div class="lft"><pre class="subclasses"><h4>Hierarchy</h4><div class="subclass f"><a href="Ext.Base.html" rel="Ext.Base" class="cls docClass">Ext.Base</a><div class="subclass"><a href="Ext.form.action.Action.html" rel="Ext.form.action.Action" class="cls docClass">Ext.form.action.Action</a><div class="subclass"><a href="Ext.form.action.Submit.html" rel="Ext.form.action.Submit" class="cls docClass">Ext.form.action.Submit</a><div class="subclass"><strong>Ext.form.action.DirectSubmit</strong></div></div></div></div></pre><p>Provides Ext.direct support for submitting form data.</p>


<p>This example illustrates usage of Ext.direct.Direct to <b>submit</b> a form through Ext.Direct.</p>


<pre class="prettyprint"><code>var myFormPanel = new Ext.form.Panel({
    // configs for FormPanel
    title: 'Basic Information',
    renderTo: document.body,
    width: 300, height: 160,
    padding: 10,
    buttons:[{
        text: 'Submit',
        handler: function(){
            myFormPanel.getForm().submit({
                params: {
                    foo: 'bar',
                    uid: 34
                }
            });
        }
    }],

    // configs apply to child items
    defaults: {anchor: '100%'},
    defaultType: 'textfield',
    items: [{
        fieldLabel: 'Name',
        name: 'name'
    },{
        fieldLabel: 'Email',
        name: 'email'
    },{
        fieldLabel: 'Company',
        name: 'company'
    }],

    // configs for BasicForm
    api: {
        // The server-side method to call for load() requests
        load: Profile.getBasicInfo,
        // The server-side must mark the submit handler as a 'formHandler'
        submit: Profile.updateBasicInfo
    },
    // specify the order for the passed params
    paramOrder: ['uid', 'foo']
});
</code></pre>


<p>The data packet sent to the server will resemble something like:</p>

<pre class="prettyprint"><code>{
    "action":"Profile","method":"updateBasicInfo","type":"rpc","tid":"6",
    "result":{
        "success":true,
        "id":{
            "extAction":"Profile","extMethod":"updateBasicInfo",
            "extType":"rpc","extTID":"6","extUpload":"false",
            "name":"Aaron Conran","email":"aaron@sencha.com","company":"Sencha Inc."
        }
    }
}
</code></pre>


<p>The form will process a data packet returned by the server that is similar
to the following:</p>

<pre class="prettyprint"><code>// sample success packet (batched requests)
[
    {
        "action":"Profile","method":"updateBasicInfo","type":"rpc","tid":3,
        "result":{
            "success":true
        }
    }
]

// sample failure packet (one request)
{
        "action":"Profile","method":"updateBasicInfo","type":"rpc","tid":"6",
        "result":{
            "errors":{
                "email":"already taken"
            },
            "success":false,
            "foo":"bar"
        }
}
</code></pre>


<p>Also see the discussion in <a href="Ext.form.action.DirectLoad.html" rel="Ext.form.action.DirectLoad" class="docClass">Ext.form.action.DirectLoad</a>.</p>
<div class="members"><div class="m-cfgs"><div class="definedBy">Defined By</div><a name="configs"></a><h3 class="cfg p">Config Options</h3><h4 class="cfgGroup">Other Configs</h4><div id="config-clientValidation" class="member f inherited"><a href="Ext.form.action.DirectSubmit.html#config-clientValidation" rel="config-clientValidation" class="expand more ar"><span>&nbsp;</span></a><div class="title"><div class="meta"><a href="Ext.form.action.Submit.html" class="definedIn docClass">Ext.form.action.Submit</a><br/><a href="../source/Submit.html#Ext-form.action.Submit-cfg-clientValidation" class="viewSource">view source</a></div><a name="clientValidation"></a><a name="config-clientValidation"></a><a href="Ext.form.action.DirectSubmit.html#" rel="config-clientValidation" class="cls expand">clientValidation</a><span> : boolean</span></div><div class="description"><div class="short">Determines whether a Form's fields are validated
in a final call to isValid prior to submission.
Pass false in the Fo...</div><div class="long"><p>Determines whether a Form's fields are validated
in a final call to <a href="Ext.form.Basic.html#isValid" rel="Ext.form.Basic#isValid" class="docClass">isValid</a> prior to submission.
Pass <tt>false</tt> in the Form's submit options to prevent this. Defaults to true.</p>
</div></div></div><div id="config-failure" class="member inherited"><a href="Ext.form.action.DirectSubmit.html#config-failure" rel="config-failure" class="expand more ar"><span>&nbsp;</span></a><div class="title"><div class="meta"><a href="Ext.form.action.Action.html" class="definedIn docClass">Ext.form.action.Action</a><br/><a href="../source/Action2.html#Ext-form.action.Action-cfg-failure" class="viewSource">view source</a></div><a name="failure"></a><a name="config-failure"></a><a href="Ext.form.action.DirectSubmit.html#" rel="config-failure" class="cls expand">failure</a><span> : Function</span></div><div class="description"><div class="short">The function to call when a failure packet was received, or when an
error ocurred in the Ajax communication.
The func...</div><div class="long"><p>The function to call when a failure packet was received, or when an
error ocurred in the Ajax communication.
The function is passed the following parameters:<ul class="mdetail-params">
<li><b>form</b> : Ext.form.Basic<div class="sub-desc">The form that requested the action</div></li>
<li><b>action</b> : Ext.form.action.Action<div class="sub-desc">The Action class. If an Ajax
error ocurred, the failure type will be in <a href="Ext.form.action.DirectSubmit.html#failureType" rel="Ext.form.action.DirectSubmit#failureType" class="docClass">failureType</a>. The <a href="Ext.form.action.DirectSubmit.html#result" rel="Ext.form.action.DirectSubmit#result" class="docClass">result</a>
property of this object may be examined to perform custom postprocessing.</div></li>
</ul></p>
</div></div></div><div id="config-form" class="member inherited"><a href="Ext.form.action.DirectSubmit.html#config-form" rel="config-form" class="expand more"><span>&nbsp;</span></a><div class="title"><div class="meta"><a href="Ext.form.action.Action.html" class="definedIn docClass">Ext.form.action.Action</a><br/><a href="../source/Action2.html#Ext-form.action.Action-cfg-form" class="viewSource">view source</a></div><a name="form"></a><a name="config-form"></a><a href="Ext.form.action.DirectSubmit.html#" rel="config-form" class="cls expand">form</a><span> : Ext.form.Basic</span></div><div class="description"><div class="short"><p>The <a href="Ext.form.Basic.html" rel="Ext.form.Basic" class="docClass">BasicForm</a> instance that
is invoking this Action. Required.</p>
</div><div class="long"><p>The <a href="Ext.form.Basic.html" rel="Ext.form.Basic" class="docClass">BasicForm</a> instance that
is invoking this Action. Required.</p>
</div></div></div><div id="config-headers" class="member inherited"><a href="Ext.form.action.DirectSubmit.html#config-headers" rel="config-headers" class="expand more"><span>&nbsp;</span></a><div class="title"><div class="meta"><a href="Ext.form.action.Action.html" class="definedIn docClass">Ext.form.action.Action</a><br/><a href="../source/Action2.html#Ext-form.action.Action-cfg-headers" class="viewSource">view source</a></div><a name="headers"></a><a name="config-headers"></a><a href="Ext.form.action.DirectSubmit.html#" rel="config-headers" class="cls expand">headers</a><span> : Object</span></div><div class="description"><div class="short"><p>Extra headers to be sent in the AJAX request for submit and load actions. See
<a href="Ext.data.Connection.html#headers" rel="Ext.data.Connection#headers" class="docClass">Ext.data.Connection.headers</a>.</p>

</div><div class="long"><p>Extra headers to be sent in the AJAX request for submit and load actions. See
<a href="Ext.data.Connection.html#headers" rel="Ext.data.Connection#headers" class="docClass">Ext.data.Connection.headers</a>.</p>

</div></div></div><div id="config-method" class="member inherited"><a href="Ext.form.action.DirectSubmit.html#config-method" rel="config-method" class="expand more"><span>&nbsp;</span></a><div class="title"><div class="meta"><a href="Ext.form.action.Action.html" class="definedIn docClass">Ext.form.action.Action</a><br/><a href="../source/Action2.html#Ext-form.action.Action-cfg-method" class="viewSource">view source</a></div><a name="method"></a><a name="config-method"></a><a href="Ext.form.action.DirectSubmit.html#" rel="config-method" class="cls expand">method</a><span> : String</span></div><div class="description"><div class="short"><p>The HTTP method to use to access the requested URL. Defaults to the
<a href="Ext.form.Basic.html#method" rel="Ext.form.Basic#method" class="docClass">BasicForm's method</a>, or 'POST' if not specified.</p>
</div><div class="long"><p>The HTTP method to use to access the requested URL. Defaults to the
<a href="Ext.form.Basic.html#method" rel="Ext.form.Basic#method" class="docClass">BasicForm's method</a>, or 'POST' if not specified.</p>
</div></div></div><div id="config-params" class="member inherited"><a href="Ext.form.action.DirectSubmit.html#config-params" rel="config-params" class="expand more ar"><span>&nbsp;</span></a><div class="title"><div class="meta"><a href="Ext.form.action.Action.html" class="definedIn docClass">Ext.form.action.Action</a><br/><a href="../source/Action2.html#Ext-form.action.Action-cfg-params" class="viewSource">view source</a></div><a name="params"></a><a name="config-params"></a><a href="Ext.form.action.DirectSubmit.html#" rel="config-params" class="cls expand">params</a><span> : Object/String</span></div><div class="description"><div class="short">Extra parameter values to pass. These are added to the Form's
Ext.form.Basic.baseParams and passed to the specified U...</div><div class="long"><p>Extra parameter values to pass. These are added to the Form's
<a href="Ext.form.Basic.html#baseParams" rel="Ext.form.Basic#baseParams" class="docClass">Ext.form.Basic.baseParams</a> and passed to the specified URL along with the Form's
input fields.</p>


<p>Parameters are encoded as standard HTTP parameters using <a href="Ext.html#urlEncode" rel="Ext#urlEncode" class="docClass">Ext.Object.toQueryString</a>.</p>

</div></div></div><div id="config-reset" class="member inherited"><a href="Ext.form.action.DirectSubmit.html#config-reset" rel="config-reset" class="expand more ar"><span>&nbsp;</span></a><div class="title"><div class="meta"><a href="Ext.form.action.Action.html" class="definedIn docClass">Ext.form.action.Action</a><br/><a href="../source/Action2.html#Ext-form.action.Action-cfg-reset" class="viewSource">view source</a></div><a name="reset"></a><a name="config-reset"></a><a href="Ext.form.action.DirectSubmit.html#" rel="config-reset" class="cls expand">reset</a><span> : Boolean</span></div><div class="description"><div class="short">When set to true, causes the Form to be
reset on Action success. If specified, this happens
before the success callba...</div><div class="long"><p>When set to <tt><b>true</b></tt>, causes the Form to be
<a href="Ext.form.Basic.html#reset" rel="Ext.form.Basic#reset" class="docClass">reset</a> on Action success. If specified, this happens
before the <a href="Ext.form.action.DirectSubmit.html#success" rel="Ext.form.action.DirectSubmit#success" class="docClass">success</a> callback is called and before the Form's
<a href="Ext.form.Basic.html#actioncomplete" rel="Ext.form.Basic#actioncomplete" class="docClass">actioncomplete</a> event fires.</p>
</div></div></div><div id="config-scope" class="member inherited"><a href="Ext.form.action.DirectSubmit.html#config-scope" rel="config-scope" class="expand more ar"><span>&nbsp;</span></a><div class="title"><div class="meta"><a href="Ext.form.action.Action.html" class="definedIn docClass">Ext.form.action.Action</a><br/><a href="../source/Action2.html#Ext-form.action.Action-cfg-scope" class="viewSource">view source</a></div><a name="scope"></a><a name="config-scope"></a><a href="Ext.form.action.DirectSubmit.html#" rel="config-scope" class="cls expand">scope</a><span> : Object</span></div><div class="description"><div class="short">The scope in which to call the configured success and failure
callback functions (the this reference for the callback...</div><div class="long"><p>The scope in which to call the configured <tt>success</tt> and <tt>failure</tt>
callback functions (the <tt>this</tt> reference for the callback functions).</p>
</div></div></div><div id="config-submitEmptyText" class="member inherited"><a href="Ext.form.action.DirectSubmit.html#config-submitEmptyText" rel="config-submitEmptyText" class="expand more"><span>&nbsp;</span></a><div class="title"><div class="meta"><a href="Ext.form.action.Action.html" class="definedIn docClass">Ext.form.action.Action</a><br/><a href="../source/Action2.html#Ext-form.action.Action-cfg-submitEmptyText" class="viewSource">view source</a></div><a name="submitEmptyText"></a><a name="config-submitEmptyText"></a><a href="Ext.form.action.DirectSubmit.html#" rel="config-submitEmptyText" class="cls expand">submitEmptyText</a><span> : Boolean</span></div><div class="description"><div class="short"><p>If set to <tt>true</tt>, the emptyText value will be sent with the form
when it is submitted. Defaults to <tt>true</tt>.</p>
</div><div class="long"><p>If set to <tt>true</tt>, the emptyText value will be sent with the form
when it is submitted. Defaults to <tt>true</tt>.</p>
</div></div></div><div id="config-success" class="member inherited"><a href="Ext.form.action.DirectSubmit.html#config-success" rel="config-success" class="expand more ar"><span>&nbsp;</span></a><div class="title"><div class="meta"><a href="Ext.form.action.Action.html" class="definedIn docClass">Ext.form.action.Action</a><br/><a href="../source/Action2.html#Ext-form.action.Action-cfg-success" class="viewSource">view source</a></div><a name="success"></a><a name="config-success"></a><a href="Ext.form.action.DirectSubmit.html#" rel="config-success" class="cls expand">success</a><span> : Function</span></div><div class="description"><div class="short">The function to call when a valid success return packet is received.
The function is passed the following parameters:...</div><div class="long"><p>The function to call when a valid success return packet is received.
The function is passed the following parameters:<ul class="mdetail-params">
<li><b>form</b> : Ext.form.Basic<div class="sub-desc">The form that requested the action</div></li>
<li><b>action</b> : Ext.form.action.Action<div class="sub-desc">The Action class. The <a href="Ext.form.action.DirectSubmit.html#result" rel="Ext.form.action.DirectSubmit#result" class="docClass">result</a>
property of this object may be examined to perform custom postprocessing.</div></li>
</ul></p>
</div></div></div><div id="config-timeout" class="member inherited"><a href="Ext.form.action.DirectSubmit.html#config-timeout" rel="config-timeout" class="expand more ar"><span>&nbsp;</span></a><div class="title"><div class="meta"><a href="Ext.form.action.Action.html" class="definedIn docClass">Ext.form.action.Action</a><br/><a href="../source/Action2.html#Ext-form.action.Action-cfg-timeout" class="viewSource">view source</a></div><a name="timeout"></a><a name="config-timeout"></a><a href="Ext.form.action.DirectSubmit.html#" rel="config-timeout" class="cls expand">timeout</a><span> : Number</span></div><div class="description"><div class="short">The number of seconds to wait for a server response before
failing with the failureType as Ext.form.action.Action.CON...</div><div class="long"><p>The number of seconds to wait for a server response before
failing with the <a href="Ext.form.action.DirectSubmit.html#failureType" rel="Ext.form.action.DirectSubmit#failureType" class="docClass">failureType</a> as <a href="Ext.form.action.Action.html#CONNECT_FAILURE" rel="Ext.form.action.Action#CONNECT_FAILURE" class="docClass">Ext.form.action.Action.CONNECT_FAILURE</a>. If not specified,
defaults to the configured <tt><a href="Ext.form.Basic.html#timeout" rel="Ext.form.Basic#timeout" class="docClass">timeout</a></tt> of the
<a href="Ext.form.action.DirectSubmit.html#form" rel="Ext.form.action.DirectSubmit#form" class="docClass">form</a>.</p>
</div></div></div><div id="config-url" class="member inherited"><a href="Ext.form.action.DirectSubmit.html#config-url" rel="config-url" class="expand more"><span>&nbsp;</span></a><div class="title"><div class="meta"><a href="Ext.form.action.Action.html" class="definedIn docClass">Ext.form.action.Action</a><br/><a href="../source/Action2.html#Ext-form.action.Action-cfg-url" class="viewSource">view source</a></div><a name="url"></a><a name="config-url"></a><a href="Ext.form.action.DirectSubmit.html#" rel="config-url" class="cls expand">url</a><span> : String</span></div><div class="description"><div class="short"><p>The URL that the Action is to invoke. Will default to the <a href="Ext.form.Basic.html#url" rel="Ext.form.Basic#url" class="docClass">url</a>
configured on the <a href="Ext.form.action.DirectSubmit.html#form" rel="Ext.form.action.DirectSubmit#form" class="docClass">form</a>.</p>
</div><div class="long"><p>The URL that the Action is to invoke. Will default to the <a href="Ext.form.Basic.html#url" rel="Ext.form.Basic#url" class="docClass">url</a>
configured on the <a href="Ext.form.action.DirectSubmit.html#form" rel="Ext.form.action.DirectSubmit#form" class="docClass">form</a>.</p>
</div></div></div><div id="config-waitMsg" class="member inherited"><a href="Ext.form.action.DirectSubmit.html#config-waitMsg" rel="config-waitMsg" class="expand more"><span>&nbsp;</span></a><div class="title"><div class="meta"><a href="Ext.form.action.Action.html" class="definedIn docClass">Ext.form.action.Action</a><br/><a href="../source/Action2.html#Ext-form.action.Action-cfg-waitMsg" class="viewSource">view source</a></div><a name="waitMsg"></a><a name="config-waitMsg"></a><a href="Ext.form.action.DirectSubmit.html#" rel="config-waitMsg" class="cls expand">waitMsg</a><span> : String</span></div><div class="description"><div class="short"><p>The message to be displayed by a call to <a href="Ext.window.MessageBox.html#wait" rel="Ext.window.MessageBox#wait" class="docClass">Ext.window.MessageBox.wait</a>
during the time the action is being processed.</p>
</div><div class="long"><p>The message to be displayed by a call to <a href="Ext.window.MessageBox.html#wait" rel="Ext.window.MessageBox#wait" class="docClass">Ext.window.MessageBox.wait</a>
during the time the action is being processed.</p>
</div></div></div><div id="config-waitTitle" class="member inherited"><a href="Ext.form.action.DirectSubmit.html#config-waitTitle" rel="config-waitTitle" class="expand more"><span>&nbsp;</span></a><div class="title"><div class="meta"><a href="Ext.form.action.Action.html" class="definedIn docClass">Ext.form.action.Action</a><br/><a href="../source/Action2.html#Ext-form.action.Action-cfg-waitTitle" class="viewSource">view source</a></div><a name="waitTitle"></a><a name="config-waitTitle"></a><a href="Ext.form.action.DirectSubmit.html#" rel="config-waitTitle" class="cls expand">waitTitle</a><span> : String</span></div><div class="description"><div class="short"><p>The title to be displayed by a call to <a href="Ext.window.MessageBox.html#wait" rel="Ext.window.MessageBox#wait" class="docClass">Ext.window.MessageBox.wait</a>
during the time the action is being processed.</p>
</div><div class="long"><p>The title to be displayed by a call to <a href="Ext.window.MessageBox.html#wait" rel="Ext.window.MessageBox#wait" class="docClass">Ext.window.MessageBox.wait</a>
during the time the action is being processed.</p>
</div></div></div></div><div class="m-properties"><a name="properties"></a><div class="definedBy">Defined By</div><h3 class="prp p">Properties</h3><div id="property-CLIENT_INVALID" class="member f inherited"><a href="Ext.form.action.DirectSubmit.html#property-CLIENT_INVALID" rel="property-CLIENT_INVALID" class="expand more ar"><span>&nbsp;</span></a><div class="title"><div class="meta"><a href="Ext.form.action.Action.html" class="definedIn docClass">Ext.form.action.Action</a><br/><a href="../source/Action2.html#Ext-form.action.Action-property-CLIENT_INVALID" class="viewSource">view source</a></div><a name="CLIENT_INVALID"></a><a name="property-CLIENT_INVALID"></a><a href="Ext.form.action.DirectSubmit.html#" rel="property-CLIENT_INVALID" class="cls expand">CLIENT_INVALID</a><span> : String</span></div><div class="description"><div class="short">Failure type returned when client side validation of the Form fails
thus aborting a submit action. Client side valida...</div><div class="long"><p>Failure type returned when client side validation of the Form fails
thus aborting a submit action. Client side validation is performed unless
<a href="Ext.form.action.Submit.html#clientValidation" rel="Ext.form.action.Submit#clientValidation" class="docClass">Ext.form.action.Submit.clientValidation</a> is explicitly set to <tt>false</tt>.</p>
</div></div></div><div id="property-CONNECT_FAILURE" class="member inherited"><a href="Ext.form.action.DirectSubmit.html#property-CONNECT_FAILURE" rel="property-CONNECT_FAILURE" class="expand more ar"><span>&nbsp;</span></a><div class="title"><div class="meta"><a href="Ext.form.action.Action.html" class="definedIn docClass">Ext.form.action.Action</a><br/><a href="../source/Action2.html#Ext-form.action.Action-property-CONNECT_FAILURE" class="viewSource">view source</a></div><a name="CONNECT_FAILURE"></a><a name="property-CONNECT_FAILURE"></a><a href="Ext.form.action.DirectSubmit.html#" rel="property-CONNECT_FAILURE" class="cls expand">CONNECT_FAILURE</a><span> : String</span></div><div class="description"><div class="short">Failure type returned when a communication error happens when attempting
to send a request to the remote server. The ...</div><div class="long"><p>Failure type returned when a communication error happens when attempting
to send a request to the remote server. The <a href="Ext.form.action.DirectSubmit.html#response" rel="Ext.form.action.DirectSubmit#response" class="docClass">response</a> may be examined to
provide further information.</p>
</div></div></div><div id="property-LOAD_FAILURE" class="member inherited"><a href="Ext.form.action.DirectSubmit.html#property-LOAD_FAILURE" rel="property-LOAD_FAILURE" class="expand more ar"><span>&nbsp;</span></a><div class="title"><div class="meta"><a href="Ext.form.action.Action.html" class="definedIn docClass">Ext.form.action.Action</a><br/><a href="../source/Action2.html#Ext-form.action.Action-property-LOAD_FAILURE" class="viewSource">view source</a></div><a name="LOAD_FAILURE"></a><a name="property-LOAD_FAILURE"></a><a href="Ext.form.action.DirectSubmit.html#" rel="property-LOAD_FAILURE" class="cls expand">LOAD_FAILURE</a><span> : String</span></div><div class="description"><div class="short">Failure type returned when the response's success
property is set to false, or no field values are returned in the re...</div><div class="long"><p>Failure type returned when the response's <tt>success</tt>
property is set to <tt>false</tt>, or no field values are returned in the response's
<tt>data</tt> property.</p>
</div></div></div><div id="property-SERVER_INVALID" class="member inherited"><a href="Ext.form.action.DirectSubmit.html#property-SERVER_INVALID" rel="property-SERVER_INVALID" class="expand more ar"><span>&nbsp;</span></a><div class="title"><div class="meta"><a href="Ext.form.action.Action.html" class="definedIn docClass">Ext.form.action.Action</a><br/><a href="../source/Action2.html#Ext-form.action.Action-property-SERVER_INVALID" class="viewSource">view source</a></div><a name="SERVER_INVALID"></a><a name="property-SERVER_INVALID"></a><a href="Ext.form.action.DirectSubmit.html#" rel="property-SERVER_INVALID" class="cls expand">SERVER_INVALID</a><span> : String</span></div><div class="description"><div class="short">Failure type returned when server side processing fails and the result's
success property is set to false.


In the c...</div><div class="long"><p>Failure type returned when server side processing fails and the <a href="Ext.form.action.DirectSubmit.html#result" rel="Ext.form.action.DirectSubmit#result" class="docClass">result</a>'s
<tt>success</tt> property is set to <tt>false</tt>.</p>


<p>In the case of a form submission, field-specific error messages may be returned in the
<a href="Ext.form.action.DirectSubmit.html#result" rel="Ext.form.action.DirectSubmit#result" class="docClass">result</a>'s <tt>errors</tt> property.</p>

</div></div></div><div id="property-addStatics" class="member inherited"><a href="Ext.form.action.DirectSubmit.html#property-addStatics" rel="property-addStatics" class="expand more ar"><span>&nbsp;</span></a><div class="title"><div class="meta"><a href="Ext.Base.html" class="definedIn docClass">Ext.Base</a><br/><a href="../source/Base3.html#Ext-Base-property-addStatics" class="viewSource">view source</a></div><a name="addStatics"></a><a name="property-addStatics"></a><a href="Ext.form.action.DirectSubmit.html#" rel="property-addStatics" class="cls expand">addStatics</a><span> : Function</span></div><div class="description"><div class="short">Add / override static properties of this class.

Ext.define('My.cool.Class', {
    ...
});

My.cool.Class.addStatics(...</div><div class="long"><p>Add / override static properties of this class.</p>

<pre><code>Ext.define('My.cool.Class', {
    ...
});

My.cool.Class.addStatics({
    someProperty: 'someValue',      // My.cool.Class.someProperty = 'someValue'
    method1: function() { ... },    // My.cool.Class.method1 = function() { ... };
    method2: function() { ... }     // My.cool.Class.method2 = function() { ... };
});
</code></pre>
</div></div></div><div id="property-borrow" class="member inherited"><a href="Ext.form.action.DirectSubmit.html#property-borrow" rel="property-borrow" class="expand more ar"><span>&nbsp;</span></a><div class="title"><div class="meta"><a href="Ext.Base.html" class="definedIn docClass">Ext.Base</a><br/><a href="../source/Base3.html#Ext-Base-property-borrow" class="viewSource">view source</a></div><a name="borrow"></a><a name="property-borrow"></a><a href="Ext.form.action.DirectSubmit.html#" rel="property-borrow" class="cls expand">borrow</a><span> : Function</span></div><div class="description"><div class="short">Borrow another class' members to the prototype of this class.

Ext.define('Bank', {

money: '$$$',
printMoney: functi...</div><div class="long"><p>Borrow another class' members to the prototype of this class.</p>

<p>Ext.define('Bank', {</p>

<pre><code>money: '$$$',
printMoney: function() {
    alert('$$$$$$$');
}
</code></pre>

<p>});</p>

<p>Ext.define('Thief', {</p>

<pre><code>...
</code></pre>

<p>});</p>

<p>Thief.borrow(Bank, ['money', 'printMoney']);</p>

<p>var steve = new Thief();</p>

<p>alert(steve.money); // alerts '$$$'
steve.printMoney(); // alerts '$$$$$$$'</p>
</div></div></div><div id="property-create" class="member inherited"><a href="Ext.form.action.DirectSubmit.html#property-create" rel="property-create" class="expand more ar"><span>&nbsp;</span></a><div class="title"><div class="meta"><a href="Ext.Base.html" class="definedIn docClass">Ext.Base</a><br/><a href="../source/Base3.html#Ext-Base-property-create" class="viewSource">view source</a></div><a name="create"></a><a name="property-create"></a><a href="Ext.form.action.DirectSubmit.html#" rel="property-create" class="cls expand">create</a><span> : Function</span></div><div class="description"><div class="short">Create a new instance of this Class.
Ext.define('My.cool.Class', {

...


});

My.cool.Class.create({

someConfig: tr...</div><div class="long"><p>Create a new instance of this Class.
Ext.define('My.cool.Class', {</p>

<pre><code>...
</code></pre>

<p>});</p>

<p>My.cool.Class.create({</p>

<pre><code>someConfig: true
</code></pre>

<p>});</p>
</div></div></div><div id="property-createAlias" class="member inherited"><a href="Ext.form.action.DirectSubmit.html#property-createAlias" rel="property-createAlias" class="expand more ar"><span>&nbsp;</span></a><div class="title"><div class="meta"><a href="Ext.Base.html" class="definedIn docClass">Ext.Base</a><br/><a href="../source/Base3.html#Ext-Base-property-createAlias" class="viewSource">view source</a></div><a name="createAlias"></a><a name="property-createAlias"></a><a href="Ext.form.action.DirectSubmit.html#" rel="property-createAlias" class="cls expand">createAlias</a><span> : Function</span></div><div class="description"><div class="short">Create aliases for existing prototype methods. Example:

Ext.define('My.cool.Class', {
    method1: function() { ... ...</div><div class="long"><p>Create aliases for existing prototype methods. Example:</p>

<pre><code>Ext.define('My.cool.Class', {
    method1: function() { ... },
    method2: function() { ... }
});

var test = new My.cool.Class();

My.cool.Class.createAlias({
    method3: 'method1',
    method4: 'method2'
});

test.method3(); // test.method1()

My.cool.Class.createAlias('method5', 'method3');

test.method5(); // test.method3() -&gt; test.method1()
</code></pre>
</div></div></div><div id="property-failureType" class="member inherited"><a href="Ext.form.action.DirectSubmit.html#property-failureType" rel="property-failureType" class="expand more ar"><span>&nbsp;</span></a><div class="title"><div class="meta"><a href="Ext.form.action.Action.html" class="definedIn docClass">Ext.form.action.Action</a><br/><a href="../source/Action2.html#Ext-form.action.Action-property-failureType" class="viewSource">view source</a></div><a name="failureType"></a><a name="property-failureType"></a><a href="Ext.form.action.DirectSubmit.html#" rel="property-failureType" class="cls expand">failureType</a><span> : String</span></div><div class="description"><div class="short">The type of failure detected will be one of these: Ext.form.action.Action.CLIENT_INVALID,
Ext.form.action.Action.SERV...</div><div class="long"><p>The type of failure detected will be one of these: <a href="Ext.form.action.Action.html#CLIENT_INVALID" rel="Ext.form.action.Action#CLIENT_INVALID" class="docClass">Ext.form.action.Action.CLIENT_INVALID</a>,
<a href="Ext.form.action.Action.html#SERVER_INVALID" rel="Ext.form.action.Action#SERVER_INVALID" class="docClass">Ext.form.action.Action.SERVER_INVALID</a>, <a href="Ext.form.action.Action.html#CONNECT_FAILURE" rel="Ext.form.action.Action#CONNECT_FAILURE" class="docClass">Ext.form.action.Action.CONNECT_FAILURE</a>, or
<a href="Ext.form.action.Action.html#LOAD_FAILURE" rel="Ext.form.action.Action#LOAD_FAILURE" class="docClass">Ext.form.action.Action.LOAD_FAILURE</a>.  Usage:</p>

<pre><code>var fp = new Ext.form.Panel({
...
buttons: [{
    text: 'Save',
    formBind: true,
    handler: function(){
        if(fp.getForm().isValid()){
            fp.getForm().submit({
                url: 'form-submit.php',
                waitMsg: 'Submitting your data...',
                success: function(form, action){
                    // server responded with success = true
                    var result = action.<a href="Ext.form.action.DirectSubmit.html#result" rel="Ext.form.action.DirectSubmit#result" class="docClass">result</a>;
                },
                failure: function(form, action){
                    if (action.<a href="Ext.form.action.DirectSubmit.html#failureType" rel="Ext.form.action.DirectSubmit#failureType" class="docClass">failureType</a> === <a href="Ext.form.action.Action.html#CONNECT_FAILURE" rel="Ext.form.action.Action#CONNECT_FAILURE" class="docClass">Ext.form.action.Action.CONNECT_FAILURE</a>) {
                        Ext.Msg.alert('Error',
                            'Status:'+action.<a href="Ext.form.action.DirectSubmit.html#response" rel="Ext.form.action.DirectSubmit#response" class="docClass">response</a>.status+': '+
                            action.<a href="Ext.form.action.DirectSubmit.html#response" rel="Ext.form.action.DirectSubmit#response" class="docClass">response</a>.statusText);
                    }
                    if (action.failureType === <a href="Ext.form.action.Action.html#SERVER_INVALID" rel="Ext.form.action.Action#SERVER_INVALID" class="docClass">Ext.form.action.Action.SERVER_INVALID</a>){
                        // server responded with success = false
                        Ext.Msg.alert('Invalid', action.<a href="Ext.form.action.DirectSubmit.html#result" rel="Ext.form.action.DirectSubmit#result" class="docClass">result</a>.errormsg);
                    }
                }
            });
        }
    }
},{
    text: 'Reset',
    handler: function(){
        fp.getForm().reset();
    }
}]
</code></pre>

</div></div></div><div id="property-implement" class="member inherited"><a href="Ext.form.action.DirectSubmit.html#property-implement" rel="property-implement" class="expand more ar"><span>&nbsp;</span></a><div class="title"><div class="meta"><a href="Ext.Base.html" class="definedIn docClass">Ext.Base</a><br/><a href="../source/Base3.html#Ext-Base-property-implement" class="viewSource">view source</a></div><a name="implement"></a><a name="property-implement"></a><a href="Ext.form.action.DirectSubmit.html#" rel="property-implement" class="cls expand">implement</a><span> : Function</span></div><div class="description"><div class="short">Add methods / properties to the prototype of this class.

Ext.define('My.awesome.Cat', {
    constructor: function() ...</div><div class="long"><p>Add methods / properties to the prototype of this class.</p>

<pre><code>Ext.define('My.awesome.Cat', {
    constructor: function() {
        ...
    }
});

 My.awesome.Cat.implement({
     meow: function() {
        alert('Meowww...');
     }
 });

 var kitty = new My.awesome.Cat;
 kitty.meow();
</code></pre>
</div></div></div><div id="property-override" class="member inherited"><a href="Ext.form.action.DirectSubmit.html#property-override" rel="property-override" class="expand more ar"><span>&nbsp;</span></a><div class="title"><div class="meta"><a href="Ext.Base.html" class="definedIn docClass">Ext.Base</a><br/><a href="../source/Base3.html#Ext-Base-property-override" class="viewSource">view source</a></div><a name="override"></a><a name="property-override"></a><a href="Ext.form.action.DirectSubmit.html#" rel="property-override" class="cls expand">override</a><span> : Function</span></div><div class="description"><div class="short">Override prototype members of this class. Overridden methods can be invoked via
Ext.Base.callOverridden

Ext.define('...</div><div class="long"><p>Override prototype members of this class. Overridden methods can be invoked via
<a href="Ext.Base.html#callOverridden" rel="Ext.Base#callOverridden" class="docClass">Ext.Base.callOverridden</a></p>

<pre><code>Ext.define('My.Cat', {
    constructor: function() {
        alert("I'm a cat!");

        return this;
    }
});

My.Cat.override({
    constructor: function() {
        alert("I'm going to be a cat!");

        var instance = this.callOverridden();

        alert("Meeeeoooowwww");

        return instance;
    }
});

var kitty = new My.Cat(); // alerts "I'm going to be a cat!"
                          // alerts "I'm a cat!"
                          // alerts "Meeeeoooowwww"
</code></pre>
</div></div></div><div id="property-response" class="member inherited"><a href="Ext.form.action.DirectSubmit.html#property-response" rel="property-response" class="expand more"><span>&nbsp;</span></a><div class="title"><div class="meta"><a href="Ext.form.action.Action.html" class="definedIn docClass">Ext.form.action.Action</a><br/><a href="../source/Action2.html#Ext-form.action.Action-property-response" class="viewSource">view source</a></div><a name="response"></a><a name="property-response"></a><a href="Ext.form.action.DirectSubmit.html#" rel="property-response" class="cls expand">response</a><span> : Object</span></div><div class="description"><div class="short"><p>The raw XMLHttpRequest object used to perform the action.</p>
</div><div class="long"><p>The raw XMLHttpRequest object used to perform the action.</p>
</div></div></div><div id="property-result" class="member inherited"><a href="Ext.form.action.DirectSubmit.html#property-result" rel="property-result" class="expand more"><span>&nbsp;</span></a><div class="title"><div class="meta"><a href="Ext.form.action.Action.html" class="definedIn docClass">Ext.form.action.Action</a><br/><a href="../source/Action2.html#Ext-form.action.Action-property-result" class="viewSource">view source</a></div><a name="result"></a><a name="property-result"></a><a href="Ext.form.action.DirectSubmit.html#" rel="property-result" class="cls expand">result</a><span> : Object</span></div><div class="description"><div class="short"><p>The decoded response object containing a boolean <tt>success</tt> property and
other, action-specific properties.</p>
</div><div class="long"><p>The decoded response object containing a boolean <tt>success</tt> property and
other, action-specific properties.</p>
</div></div></div><div id="property-run" class="member inherited"><a href="Ext.form.action.DirectSubmit.html#property-run" rel="property-run" class="expand more"><span>&nbsp;</span></a><div class="title"><div class="meta"><a href="Ext.form.action.Action.html" class="definedIn docClass">Ext.form.action.Action</a><br/><a href="../source/Action2.html#Ext-form.action.Action-property-run" class="viewSource">view source</a></div><a name="run"></a><a name="property-run"></a><a href="Ext.form.action.DirectSubmit.html#" rel="property-run" class="cls expand">run</a><span> : Object</span></div><div class="description"><div class="short"><p>Invokes this action using the current configuration.</p>
</div><div class="long"><p>Invokes this action using the current configuration.</p>
</div></div></div><div id="property-type" class="member inherited"><a href="Ext.form.action.DirectSubmit.html#property-type" rel="property-type" class="expand more"><span>&nbsp;</span></a><div class="title"><div class="meta"><a href="Ext.form.action.Action.html" class="definedIn docClass">Ext.form.action.Action</a><br/><a href="../source/Action2.html#Ext-form.action.Action-property-type" class="viewSource">view source</a></div><a name="type"></a><a name="property-type"></a><a href="Ext.form.action.DirectSubmit.html#" rel="property-type" class="cls expand">type</a><span> : String</span></div><div class="description"><div class="short"><p>The type of action this Action instance performs.
Currently only "submit" and "load" are supported.</p>
</div><div class="long"><p>The type of action this Action instance performs.
Currently only "submit" and "load" are supported.</p>
</div></div></div></div><div class="m-methods"><a name="methods"></a><div class="definedBy">Defined By</div><h3 class="mth p">Methods</h3><div id="method-DirectSubmit" class="member f inherited"><a href="Ext.form.action.DirectSubmit.html#method-DirectSubmit" rel="method-DirectSubmit" class="expand more ar"><span>&nbsp;</span></a><div class="title"><div class="meta"><a href="Ext.form.action.Action.html" class="definedIn docClass">Ext.form.action.Action</a><br/><a href="../source/Action2.html#Ext-form.action.Action-method-constructor" class="viewSource">view source</a></div><a name="DirectSubmit"></a><a name="method-DirectSubmit"></a><a href="Ext.form.action.DirectSubmit.html#" rel="method-DirectSubmit" class="cls expand">DirectSubmit</a>(
<span class="pre">Object config</span>)
 : void</div><div class="description"><div class="short"><p>&nbsp;</p></div><div class="long">
<h3 class="pa">Parameters</h3><ul><li><span class="pre">config</span> : Object<div class="sub-desc"><p>The configuration for this instance.</p>
</div></li></ul><h3 class="pa">Returns</h3><ul><li><span class="pre">void</span>&nbsp; &nbsp;
</li></ul></div></div></div><div id="method-callOverridden" class="member inherited"><a href="Ext.form.action.DirectSubmit.html#method-callOverridden" rel="method-callOverridden" class="expand more ar"><span>&nbsp;</span></a><div class="title"><div class="meta"><a href="Ext.Base.html" class="definedIn docClass">Ext.Base</a><br/><a href="../source/Base3.html#Ext-Base-method-callOverridden" class="viewSource">view source</a></div><a name="callOverridden"></a><a name="method-callOverridden"></a><a href="Ext.form.action.DirectSubmit.html#" rel="method-callOverridden" class="cls expand">callOverridden</a>(
<span class="pre">Array/Arguments args</span>)
 : Mixed</div><div class="description"><div class="short">Call the original method that was previously overridden with Ext.Base.override

Ext.define('My.Cat', {
    constructo...</div><div class="long"><p>Call the original method that was previously overridden with <a href="Ext.Base.html#override" rel="Ext.Base#override" class="docClass">Ext.Base.override</a></p>

<pre><code>Ext.define('My.Cat', {
    constructor: function() {
        alert("I'm a cat!");

        return this;
    }
});

My.Cat.override({
    constructor: function() {
        alert("I'm going to be a cat!");

        var instance = this.callOverridden();

        alert("Meeeeoooowwww");

        return instance;
    }
});

var kitty = new My.Cat(); // alerts "I'm going to be a cat!"
                          // alerts "I'm a cat!"
                          // alerts "Meeeeoooowwww"
</code></pre>
<h3 class="pa">Parameters</h3><ul><li><span class="pre">args</span> : Array/Arguments<div class="sub-desc"><p>The arguments, either an array or the <code>arguments</code> object</p>
</div></li></ul><h3 class="pa">Returns</h3><ul><li><span class="pre">Mixed</span>&nbsp; &nbsp;<p>Returns the result after calling the overridden method</p>
</li></ul></div></div></div><div id="method-getName" class="member inherited"><a href="Ext.form.action.DirectSubmit.html#method-getName" rel="method-getName" class="expand more ar"><span>&nbsp;</span></a><div class="title"><div class="meta"><a href="Ext.Base.html" class="definedIn docClass">Ext.Base</a><br/><a href="../source/Base3.html#Ext-Base-method-getName" class="viewSource">view source</a></div><a name="getName"></a><a name="method-getName"></a><a href="Ext.form.action.DirectSubmit.html#" rel="method-getName" class="cls expand">getName</a> : String</div><div class="description"><div class="short">Get the current class' name in string format.

Ext.define('My.cool.Class', {
    constructor: function() {
        al...</div><div class="long"><p>Get the current class' name in string format.</p>

<pre><code>Ext.define('My.cool.Class', {
    constructor: function() {
        alert(this.self.getName()); // alerts 'My.cool.Class'
    }
});

My.cool.Class.getName(); // 'My.cool.Class'
</code></pre>
<h3 class="pa">Returns</h3><ul><li><span class="pre">String</span>&nbsp; &nbsp;<p>className</p>
</li></ul></div></div></div></div></div></div></div><div id="pageContent"></div></div></div></div></body></html>